$(function () {
    
    //定义一个全局对象:
    const QueryParam = {
        //查询关键字:
        query: '',
        //url传参所需要的数据对应页面:
        cid: getUrl('cid'),
        //页码:
        pagenum: 1,
        //页码量:
        pagesize: 10
    }

    //定义一个总页数用来储存:
    let TotalPages = 1;

    init();

    function init() {
        // getGoodsSearch();

        //调用点击事件函数:
        eventList();

        //下拉刷新组件初始化:
        mui.init({
            pullRefresh: {
                //选择器:
                container: ".pyg_view",
                //下拉刷新:
                down: {
                    //默认false,true表示首次加载自动下拉刷新一次
                    auto: true,
                    //下拉刷新时触发回调函数:
                    callback: () => {
                        console.log(123);
                        //每次上拉刷新,相当于刷新页面(需要重置页码):
                        QueryParam.pagenum = 1;

                        //下拉的时候重新申请数据:
                        //传入函数:
                        getGoodsSearch((goods) => {
                            //渲染页面:
                            let html = template('goodsTmp', {
                                goods
                            });
                            $('.good_lists').html(html);

                            // 结束下拉刷新组件
                            mui('.pyg_view').pullRefresh().endPulldownToRefresh();

                            // 重置上拉刷新组件
                            mui('.pyg_view').pullRefresh().refresh(true);
                        });
                    }
                },

                //上拉加载下一页:
                up: {
                    //上拉加载触发回调函数:
                    callback: () => {

                        //需要先判断有么有下一页数据:
                        //当前页码数 > 总页数,则表示没有下一页数据:
                        if (QueryParam.pagenum > TotalPages) {

                            //没有下一页数据则则结束上拉加载:
                            mui('.pyg_view').pullRefresh().endPullupToRefresh(true);
                        } else {
                            //如果有,则当前页码数需要++,并且追加新的数据:
                            QueryParam.pagenum++;
                            //申请数据:
                            getGoodsSearch((goods) => {
                                let html = template('goodsTmp', {
                                    goods
                                })
                                //将申请到的数据追加到后面数据上：
                                $('.good_lists').append(html);
                                //结束上拉加载:
                                mui('.pyg_view').pullRefresh().endPullupToRefresh(true);
                            })
                        }
                    }
                }
            }
        });
    }

    //申请数据:
    function getGoodsSearch(callback) {
        $.get("goods/search", QueryParam, (res) => {
            if (res.meta.status == 200) {
                // console.log(res);

                //计算总页数:
                TotalPages = Math.floor(res.data.total / QueryParam.pagesize)

                //需要一个回调函数来提供调用的数据:
                callback(res.data.goods);
            }
        });
    }


    //注册点击事件:
    function eventList() {
        $(".good_lists").on("tap", "a", function () {

            let href = this.href;
            location.href = href;
        })
    }



    //获取到url的参数:
    function getUrl(name) {
        var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
        var r = window.location.search.substr(1).match(reg);
        if (r != null) return decodeURI(r[2]);
        return null;
    }

})